// 验证月份 01-12
function isMonth(obj) {
    var reg = /^0?[1-9]|1[0-2]$/;
    if (!reg.test(obj)) {
        return false;
    } else {
        return true;
    }
}
// 验证4位年份
function isYear(obj) {
    var reg = /^[0-9]{4}$/;
    if (!reg.test(obj)) {
        return false;
    } else {
        return true;
    }
}

// 验证日期  yyyy-M-d yyyy/M/d yyyy.M.d
function checkDate(obj) {
    //var reg = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;
    var reg = /^(?:(?!0000)[0-9]{4}([-\/.]?)(?:(?:0?[1-9]|1[0-2])([-\/.]?)(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])([-\/.]?)(?:29|30)|(?:0?[13578]|1[02])([-\/.]?)31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-\/.]?)0?2([-\/.]?)29)$/;
    if (reg.test(obj))
        return true;
    return false;
}
function validateCNDate(strValue) {
    var objRegExp = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/;

    if (!objRegExp.test(strValue))
        return false;
    else {
        var arrayDate = strValue.split(RegExp.$1);
        var intDay = parseInt(arrayDate[2], 10);
        var intYear = parseInt(arrayDate[0], 10);
        var intMonth = parseInt(arrayDate[1], 10);

        if (intMonth > 12 || intMonth < 1) {
            return false;
        }

        var arrayLookup = {
            '1': 31, '3': 31, '4': 30, '5': 31, '6': 30, '7': 31,
            '8': 31, '9': 30, '10': 31, '11': 30, '12': 31
        };

        if (arrayLookup[parseInt(arrayDate[1])] !== null) {
            if (intDay <= arrayLookup[parseInt(arrayDate[1])] && intDay !== 0)
                return true;
        }

        if (intMonth - 2 === 0) {
            var booLeapYear = (intYear % 4 === 0 && (intYear % 100 !== 0 || intYear % 400 === 0));
            if (((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <= 28)) && intDay !== 0)
                return true;
        }
    }
    return false;
}

//验证数字 包括小数和整数
function isNumber(obj) {
    var reg = /^-?[1-9]+(\.\d+)?$|^-?0(\.\d+)?$|^-?[1-9]+[0-9]*(\.\d+)?$/;
    if (!reg.test(obj)) {
        return false;
    } else {
        return true;
    }
}

// 判断数组中是否有重复值
function isRepeat(arr) {
    var hash = {};
    for (var i in arr) {
        if (hash[arr[i]])
            return true;

        hash[arr[i]] = true;
    }

    return false;
}